اهداف: محاسبه ريشه دستگاه دسته عدم وابسته معادالت ريشه هاي چندجمله اي معادالت غيرخطي بندي وابستگي به روش به مشتق مشتق تابع مقدمه غير خطي هاي عددي تابع دسته بندي دوم روش هاي عددي دامنه محدود دامنه نامحدود رهيافت هاي محاسباتي: سعي و خطا دامنه محدود دامنه نامحدود )بسته(
روش هاي سعي و خطا فرض جواب x = α محاسبه توقف محاسبه. رهيافت هاي محاسباتي f(α) تكرار آلگوريتم تا f(α) 0 دامنه محدود )بسته( فرض جواب در محدوده a < x < b كاهش دامنه بصورت سيستماتيك با حفظ جواب در داخل دامنه. دو روش متداول: )1 )2 نصف كردن بازه method) (bisectio موقعيت خطا falsi) (False positio or regula 3
ادامه رهيافت هاي محاسباتي دامنه نامحدود عدم حفظ ريشه در استفاده از اطالعات چهار روش متداول: 1. روش نقطه ثابت 2. روش نيوتن 3. روش سكانت. 4. روش مولر. * در اينجا هستند. روش سه تنها محدوده مشخص. تابع براي تخمين جواب. نظر مورد نامحدود دامنه يابي ريشه هاي شيوه از اول 4
روش هاي دامنه محدود )بسته( 5
روش نصف كردن بازه )Bisectio( بيان رياضي: f(x)=0 محدوديت هاي روش: فرضيات رياضياتي: يك ريشه در بازه معين. [a,b] y = f(x) دربازه پيوسته است. f(a).f(b) < 0 f (x) 0 حالت مناسب: 6
الگوریتم روش نصف كردن بازه )Bisectio( گام اول: گام دوم: گام سوم: اگر شرط فوق برقرار باشد به مرحله چهار برو در غيراينصورت بازگرد به گام اول گام چهارم: نمايش c به عنوان ريشه و پايان الگوريتم. 7
ادامه الگوریتم روش نصف كردن بازه )Bisectio( 8 مزایا : * روش ساده و محاسبه خطا آسان معایب: * نرخ همگرائي كند. * در موارد خاص روش به جواب نمي رسد.
برنامه matlab روش نصف كردن بازه )Bisectio( 9
مثال ریشه یابي به شيوه Bisectio 10
مثال ریشه یابي به شيوه Bisectio رسم تابع f(x)=x 3 -x 2-1 در بازه 2] [1, 11
روش نصف كردن بازه )Bisectio( نكته 1: براي صفحه ي 37 محاسبه خطا از كتاب درسي مي توان از فرمول استفاده كرد: در شده ذكر ديگر هاي يا a b يا a b a 2.1 6 4 تمرين: مسائل 2 )93/07/26 بخش از و تحويل: )موعد درسي كتاب 12
مجموعه مسائل بخش 2.1 13
روش False positio [a,b] تابع غيرخطي f(x) در بازه بصورت خطي تقريب زده مي شود. روش شيوهي سرعت كمي معادله و مشابه كه با ( x, f ( x )) 1 1 False Positio Bisectio x 3 ( x, f ( x )) 2 2 كه به نام Regula Falsi نيز مشهور است ميباشد با اين تفاوت كه داراي اين برتري است بيشتر از شيوهي قبل جواب را بدست ميدهد. جديد كه از محل تالقي خط واصل بين دو نقطه حاصل مي شود: 14 x x f ( x ) 3 2 2 x x 2 1 f ( x ) f ( x ) 2 1
)False Positio( اطخ تيعقوم شور متیروگلا :لوا ماگ :مود ماگ :موس ماگ هب درگزاب تروصنياريغ رد ورب راهچ هلحرم هب دشاب رارقرب قوف طرش رگا لوا ماگ :مراهچ ماگ شيامن c.متيروگلا ناياپ و هشير ناونع هب b c b f a c a f b f a f b a b f b c a b f(a ) ext estimate, c f(b ) F(c) b b c a otherwise a a c b a f c f if 1 1 1 1,, 0 ) ( ). ( 2 1 1 1 / c e or ad a b e 15
16 الگوریتم روش False positio
برنامه Matlab روش False positio fuctio false(f,a,b,tol,) % False positio method for solvig the oliear % equatio f(x)=0. a0=a; b0=b; iter=0; u=feval(f,a); v=feval(f,b); c=(v*a-u*b)/(v-u); w=feval(f,c); disp(' ') disp(' iter a b c f(c) b-a ') disp(' ') fpritf('\') if (u*v<=0) while (abs(w)>tol)&(abs(b-a)>tol)&(iter<=)&((vu)~=0) w=feval(f,c); fpritf('%2.0f %12.4f %12.4f %12.6f %10.6f %10.6f\',iter,a,b,c,w,abs(b-a)) 17 if (w*u<0) b=c;v=w; ed if (w*u>0) a=c;u=w; ed iter=iter+1; c=(v*a-u*b)/(v-u); ed if (iter>) disp(' Method failed to coverge') ed if (v-u==0) disp(' Divisio by zero') ed else disp(' The method caot be applied f(a)f(b)>0') ed % Plot f(x) i the iterval [a,b]. fplot(f,[a0 b0]) xlabel('x');ylabel('f(x)'); grid
مثال ریشه یابي به شيوه False Positio 18
روش موقعيت خطا Positio( )False for 0,1,..., ITMAX c f ( b ) a f ( a ) b f ( b ) f ( a ) if f ( a ). f ( c) 0, set a a, b c 1 1 otherwise, set a c, b b. 1 1 2.2 3 2 تمرين: مسائل 1 )93/07/26 بخش از و و تحويل: )موعد درسي كتاب 19
مجموعه مسائل بخش 2.2 20
روش هاي دامنه نامحدود 21
روش سکانت 22 Secat از آنجائيكه روشهاي Bisectio و False Positio با سرعت كمي به سمت ريشه ميل ميكنند لذا يافتن براي سريعتر اي شيوه چنين يك است. نياز ريشه نام Secat شيوهي شيوهاي شيوهي False مشابه دارد. Positio اساس اين روش نيز بر تقريب زدن ريشه تابع از طريق يك خط مستقيم قرار دارد كه دو نقطه از نمودار تابع را به يكديگر وصل ميكند اما نيازي نيست كه داراي حتما اوليه حدس نقاط عالمت مخالف باشند. شيوه ي و دو تقریب اوليه آن حول صفر تابع به نام α
الگوریتم روش سکانت )Secat( x i1 x i f f xi xi 1 xi x f x i 1 i گام اول: گام دوم: e x x ad / or e f ( x ) i1 i 1 i1 2 گام سوم: اگر شرط فوق برقرار باشد به مرحله چهار برو در غيراينصورت داريم: Set x i x i1, xi 1 x i گام چهارم: نمايش 1+i x به عنوان ريشه و پايان الگوريتم. 23
شبه كد و برنامه Matlab ریشه یابي به روش سکانت شبه كد تابع Matlab براي روش سكانت 24
مزایا و معایب ریشه یابي به روش سکانت معايب 1( چنانچه تابع بيش از حد غير خطي باشد در چنين حالتي ريشه هاي يافت شده در گام هاي بعدي به جاي همگرايي به سمت ريشه مطابق شكل واگرا مي گردند. مزايا: 1( همگرايي سريع 2( به مشتق نيازي ندارد r x 0 x 1 x 2 25
مثال ریشه یابي به شيوه Secat 26
روش سکانت )Secat( for =1,2,, ITMAX x x f x 1 1 ( )[ ] f ( x) f ( x 1) x x x x f ( x ), x x or 1 1 x 1 تمرين: مسائل 1 و 4 از بخش 3.2 كتاب درسي )موعد تحويل: )93/07/26 27
مجموعه مسائل بخش 2.3 28
روش نيوتن روشي قوي همگراست. آلگوريتم بر كه تقريبا در كليه مواردي كه فرض مبناي استفاده از ريشه تابع مماس بر اوليه منحني است جواب نزديك 29
الگوریتم روش نيوتن )Newto-Raphso( x i1 x i f f xi x i گام اول: گام دوم: e x x ad / or e f ( x ) i1 i 1 i1 2 گام سوم: اگر شرط فوق برقرار باشد برو مرحله چهار Set x i x i1 در غيراينصورت داريم: گام چهارم: نمايش 1+i x به عنوان ريشه و پايان الگوريتم. 30
ایرادات روش نيوتن واگرايي در صورت عدم انتخاب نقطه شروع مناسب مثال براي حالت نشان داده شده هيچگاه خط حاصل از مشتق محور xها را قطع نمي كند. مشكل و يا بودن مشتق اي داده شده غيرقابل محاسبه تابع در نقاط بازه 31
مثال ریشه یابي به شيوه Newto 32
روش نيوتن )Newto( 2.4 4 تمرين: مسائل 1 )93/07/26 بخش از و تحويل: )موعد درسي كتاب 33
روش تکراري نقطه ثابت )Fixed-Poit( تمامي روشها يي كه تا به حال مورد بحث و بررسي قرار گرفتند مثالهايي از روشهاي تكرار عمليات بودند. در اين بخش يك شيوه ي مهم ديگر از عمليات تكرار را براي حل معادالت به فرم g(x)=x معرفي مي نماييم. روش نقطه ثابت كه براي تعيين نقطه اي ثابت از تابع g به كار ميرود در ابتدا از يك حدس اوليه مثل p 0 آغاز ميشود كه اين حدس اوليه يك سري از مقادير بدست آمده از طريق روش را مشخص مي كند. اگر g يك تابع پيوسته و پروسه فوق به مقدار α همگرا شود يعني اگر به سمت ميل كرده و p = α گرديد جواب معادله به فرم معادله همين صفحه بدست مي آيد. بطور هندسي نقطه ثابت p از تابع g محل برخورد خط y=x و تابع y=g(x) مي باشد. p 1 g ( p), 0,1, 2... 34
ادامه روش تکراري نقطه ثابت شکل 2.9- تکرار Fixed-Poit و واگرایي آن از نقطه شکل 2.8- روش تکرار و همگرایي آن به نقطه Fixed-Poit 35
شبه كد شبه كد ریشه یابي به روش نقطه ثابت 36
مثال ریشه یابي به شيوه Fixed-Poit 37
روش نقطه ثابت )Fixed-Poit( )93/07/26 2.5 4 تحويل: )موعد درسي كتاب بخش از و مسائل تمرين: 3 38
روش نقطه ثابت )Fixed-Poit( )93/07/26 2.5 4 تحويل: )موعد درسي كتاب بخش از و مسائل تمرين: 3 39
برخي دستورات Matlab مرتبط با ریشه یابي 40
ادامه برخي دستورات Matlab مرتبط با ریشه یابي 41
ادامه برخي دستورات Matlab مرتبط با ریشه یابي 42
ادامه برخي دستورات Matlab مرتبط با ریشه یابي 43
ادامه برخي دستورات Matlab مرتبط با ریشه یابي تكليف: )موعد تحويل: 93/07/26 ( بررسي شود در نرم افزار براي پيدا كرد ريشه هاي استفاده مي شود از غير MATLAB يك از چه رهيافت محاسبات چند جمله اي توسط دستور عددي roots دستور roots چه دستورات و توابع ديگري در MATLAB براي ريشه يابي معادالت غيرخطي يافت مي شود نرم افزار (1 (2 44
45